import java.util.*;

//NC101 压缩字符串(一)
public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     *
     * @param param string字符串
     * @return string字符串
     */
    public String compressString (String param) {
        if (param.length() == 0) {
            return "";
        }
        StringBuilder ans = new StringBuilder();
        int len = 1;
        char flag = param.charAt(0);
        for (int i = 1; i < param.length(); i++) {
            if (flag != param.charAt(i)) {
                ans.append(flag);
                if (len != 1) {
                    ans.append(len);
                }
                len = 0;
                flag = param.charAt(i);
            }
            len++;
        }
        ans.append(flag);
        if(len!=1){
            ans.append(len);
        }
        return ans.toString();
    }
}



//chika和蜜柑
class Orange
{
    int a; // 酸度
    int b; // 甜度
    Orange(){}

    Orange(int a, int b)
    {
        this.a = a;
        this.b = b;
    }
}
class Main
{
    public static void main(String[] args)
    {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt(), k = in.nextInt();
        Orange[] o = new Orange[n];
        for(int i = 0; i < n; i++)
        {
            o[i] = new Orange();
            o[i].a = in.nextInt();
        }
        for(int i = 0; i < n; i++)
        {
            o[i].b = in.nextInt();
        }

        // 排序
        Arrays.sort(o, (x, y) ->
        {
            if(x.b == y.b) return x.a - y.a;
            return y.b - x.b;
        });

        // 提取结果
        long x = 0, y = 0;
        for(int i = 0; i < k; i++)
        {
            x += o[i].a;
            y += o[i].b;
        }

        System.out.println(x + " " + y);
    }
}



//NC145 01背包
 class Solution2 {
    public int knapsack(int V, int n, int[][] vw) {
        int[] dp = new int[V + 1];

        for (int i = 0; i < n; i++) {
            int vi = vw[i][0]; // 物品体积
            int wi = vw[i][1]; // 物品重量
            for (int j = V; j >= vi; j--) { // 倒序遍历，防止重复选择
                dp[j] = Math.max(dp[j], dp[j - vi] + wi);
            }
        }

        return dp[V]; // 返回能装的最大重量
    }
}
